#ifndef ELEMENT_H
#define ELEMENT_H

#include <string>

#include "base_sub_element.h"
#include "element.h"
#include "base_element.h"

class Element : public BaseElement {
	
public:
	Element(std::string aName, BaseSubElement* aSub);
	~Element ();
	bool isParentOf(BaseElement & be);
	std::string generateRegex(DoctypeDefinition* dtd);
	
	virtual void print(std::ostream& out);
	
protected:
	BaseSubElement* sub;
};

#endif //ELEMENT_H
